//#include<ctype.h>
//int main()
//{
//	int ret = islower('a');
//	//int ret = islower('A');
//	printf("%d\n",ret);
//	return 0;
//}


//#include<ctype.h>
//#include<stdio.h>
//int main()
//{
//	char str[] = "Zhang San";
//	int i =0;
//	while(str[i]!='\0')
//	{
//		if(islower(str[i]))
//		{
//			str[i]=toupper(str[i]);
//		}
//		i++;
//	}
//	printf("%s",str);
//	
//	return 0;
//}


//int main()
//{
//	printf("%c\n",toupper('a'));
//	printf("%c\n",toupper('&'));
//	printf("%c\n",tolower('H'));
//	return 0;
//}
//#include<stdio.h>
//#include<assert.h>
//int my_strlen1(char* p)
//{
//	int count = 0;
//	while(*p!='\0')
//	{
//		p++;
//		count++;
//		
//	}
//	return count;
//	
//}
//
//int my_strlen2(char*p)
//{
//	
//	assert(p);
//	char*s=p;
//	while(*p!='\0')
//	{
//		p++;
//	}
//	return p-s;
//}
//
//int my_strlen3(char*p)
//{
//	if(*p=='\0')
//	{
//		return 0;
//	}
//	return 1+my_strlen3(p+1);
//}
//
//
//
//int main()
//{
//	char arr[]="abcdef";
//	int ret = my_strlen3(arr);
//	printf("%d",ret);
//	
//	return 0;
//}

//#include<string.h>
//#include<stdio.h>
//int main()
//{
//
//	char arr1[]="zhang san";
//	char arr2[20]="xxxxxxxxxxxxxxxxxxxx";
//	strcpy(arr2,arr1);
//	printf("%s",arr2);
//	
//	
//	return 0;
//}

//
//#include<stdio.h>
//int main()
//{
//	printf("%d",'\0');
//	
//	return 0;
//}











//#include<assert.h>
//#include<string.h>
//#include<stdio.h>
//char* my_strcpy(char* arr2,const char*arr1)
//{
//	assert(arr1);
//	assert(arr2);
//	char*dest =arr2;
//	while(*arr2++=*arr1++)
//	{
//	;
//	}
//	//*arr2=*arr1;这里我们可以把这句话去掉，因为最后while循环判断的时候*arr2++=*arr1++还会再运行一次会把'\0'放进arr2并退出循环
//	return dest;
//	
//}
//int main()
//{
//	
//	char arr1[]="zhang san";
//	char arr2[20]="xxxxxxxxxxxxxxxxxxxx";
//	my_strcpy(arr2,arr1);
//	printf("%s",arr2);
//	
//	
//	return 0;
//}
#include<stdio.h>
#include<string.h>
#include<assert.h>
//char* my_strcat(char*arr1,const char*arr2)
//{
//	assert(arr1&&arr2);//防止传入空指针
//	char*ret =arr1;
//	while(*arr1)
//	{
//		arr1++;
//	}
//	while(*arr1++=*arr2++)
//	{
//		;
//	}
//	return ret;
//}

//int my_strcmp(const char*str1,const char*str2)
//{
//	while(*str1==*str2)
//	{
//		if(*str1=='0')
//		{
//			return 0;
//		}
//		
//		str1++;
//		str2++;
//		
//	}
//	
//	return *str1-*str2;
//}
//
//
//
//
//int main()
//{
//	char arr1[20]="abcdq";
//	char arr2[20]="abcdef";
//	int i =my_strcmp (arr1 ,arr2);
//	printf("%d",i);
//	
//	return 0;
//}



//int main()
//{
//	char arr1[20]="abcde";
//	char arr2[20]="abcdef";
//	int i =strcmp (arr1 ,arr2);
//	printf("%d",i);
//	
//	return 0;
//}


//#include<string.h>
//#include<stdio.h>
//int main()
//{
//	char arr1[20]="xxxxxxxxxxxxxx";
//	char arr2[20]="abcde";
//	strncpy(arr1,arr2,3);
//	printf("%s",arr1);
//	
//	return 0;
//}
//
//#include<stdio.h>
//#include<stdlib.h>
//int main()
//{
//	int n ;
//	int count=0;
//	int c;
//	scanf("%d",&n);
//	int *p =(int*)malloc(n*sizeof(int));
//	for(int i =0;i<n;i++)
//	{
//		scanf("%d",p+i);
//		
//	}
//for(int m =0;m< n;m++)
//{
//	
//	for(int j=m+1;j<n;j++)
//	{
//		if(j<n)
//		{
//		
//		c=p[j]*p[m];
//		count+=c;
//		}
//	}
//}
//	
//	printf("%d",count);
//	
//	return 0;
//}


#include<stdio.h>
#include<stdlib.h>
#include<math.h>
void tow(int* p,int n)
{
	for(int i =0;i<8;i++)
	{
		p[i]=n/(int)pow(10,i)%10;
	}
}
int main()
{
	int n =0;
	scanf("%d",&n);
	int* p =(int*)malloc(8*sizeof(int));
	for(int j = n+1;j<100000000;j++)
	{
		int count=0;
		int flog =0;
		tow(p,j);
		for(int y=0;y<4;y++)
		{
			if(p[7-y]!=p[y])
			   break;
			count++;
			if(count==4)
			{
				printf("%d\n",j);
				flog =1;
				break;
			}
		}
		if(flog==1)
		{
			break;
		}
	}
	for(int e=n+1;e<100000000;e++)
	{
		tow(p,e);
		if(p[0]==p[2]&&p[0]==p[5]&&p[0]==p[7]&&p[1]==p[3]&&p[1]==p[4]&&p[1]==p[6])
		{
			printf("%d",e);
			break;
		}
		
		
	}
	
	free(p);


	
	
	return 0;
}
//	int a=n;
//	int b=n;
//	for (int j=n;j<100000000;j++);
//	{
//		
//		if(a%10==b/10000000)
//			{
//				if(a/10%10==b/1000000%10)
//				{
//					if(a/100%10==b/100000%10)
//					{
//						if(a/1000%10==b/10000%10)
//						{
//							printf("%d",j);
//						}
//					}
//				}
//			}
//			
//		
//	}
//	for(int e =n;e<100000000;e++)
//	{
//		
//		
//	}
